import UpmsMenuAndAuthorityTree from '@/core/upms/types/model/dto/UpmsMenuAndAuthorityTree'
import UpmsMenuShowStatusEnum from '@/core/upms/enums/UpmsMenuShowStatusEnum'
import UpmsMenuResponse from '@/core/upms/types/model/response/UpmsMenuResponse'
import UpmsAuthorityResponse from '@/core/upms/types/model/response/UpmsAuthorityResponse'

const menus: UpmsMenuAndAuthorityTree[] = [
	{
		menu: {
			title: '客户端管理',
			icon: 'fa fa-desktop',
			sort: 0,
			showStatus: UpmsMenuShowStatusEnum.DISPLAY.getCode(),
			uri: '/oauth2',
		} as Partial<UpmsMenuResponse>,
		authority: {} as UpmsAuthorityResponse,
		children: [
			{
				menu: {
					uri: '/oauth2/client/list',
					title: '客户端列表',
					icon: 'fa-solid fa-shield-halved',
					sort: 0,
					showStatus: UpmsMenuShowStatusEnum.DISPLAY.getCode(),
				} as Partial<UpmsMenuResponse>,
				authority: {} as UpmsAuthorityResponse,
				children: [],
			},
			{
				menu: {
					uri: '/oauth2/rest/grant/type/list',
					icon: 'fa-solid fa-shield-halved',
					title: 'Rest认证配置列表',
					sort: 0,
					showStatus: UpmsMenuShowStatusEnum.DISPLAY.getCode(),
				} as Partial<UpmsMenuResponse>,
				authority: {} as UpmsAuthorityResponse,
				children: [],
			},
			{
				menu: {
					uri: '/oauth2/user/list',
					icon: 'fa-solid fa-shield-halved',
					title: '账户授权配置列表',
					sort: 0,
					showStatus: UpmsMenuShowStatusEnum.DISPLAY.getCode(),
				} as Partial<UpmsMenuResponse>,
				authority: {} as UpmsAuthorityResponse,
				children: [],
			},
			{
				menu: {
					uri: '/oauth2/authorization/list',
					icon: 'fa-solid fa-shield-halved',
					title: '令牌列表',
					sort: 0,
					showStatus: UpmsMenuShowStatusEnum.DISPLAY.getCode(),
				} as Partial<UpmsMenuResponse>,
				authority: {} as UpmsAuthorityResponse,
				children: [],
			},
		],
	},
]

export default menus
